home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / VIG-PR10.ZIP / PROMPTS.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1994-04-20  |  11KB  |  742 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 2.OO (plain) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Boolean  BOOLEAN001
  20.     Boolean  BOOLEAN002
  21.     Integer  INTEGER001
  22.     Integer  INTEGER002
  23.     Integer  INTEGER003
  24.     Integer  INTEGER004
  25.     Integer  INTEGER005
  26.     Integer  INTEGER006
  27.     Integer  INTEGER007
  28.     String   STRING001
  29.     String   STRING002
  30.     String   STRING003
  31.     String   STRING004
  32.     String   STRING005
  33.     String   STRING006
  34.     String   STRING007
  35.     String   STRING008
  36.     String   STRING009
  37.     String   STRING010
  38.     String   STRING011
  39.  
  40. ;------------------------------------------------------------------------------
  41.  
  42.     STRING005 = Chr(8) + " " + Chr(8)
  43.     If (TokCount() <> 1) Then
  44.         Color 140
  45.         Newlines 2
  46.         PrintLn "Read the docs."
  47.         End
  48.     Else
  49.         INTEGER001 = GetToken()
  50.     Endif
  51.     If ((INTEGER001 == 259) || (ScrText(80, 1, 1, 0) == " ")) Then
  52.         INTEGER002 = 4
  53.         INTEGER004 = 80
  54.     Else
  55.         Select Case (ScrText(1, 1, 20, 0))
  56.             Case Left(StripAtx(ReadLine(PPEPath() + "prompts.cnf", 65)), 20)
  57.                 INTEGER002 = 1
  58.             Case Left(StripAtx(ReadLine(PPEPath() + "prompts.cnf", 61)), 20)
  59.                 INTEGER002 = 2
  60.             Case Left(StripAtx(ReadLine(PPEPath() + "prompts.cnf", 67)), 20)
  61.                 INTEGER002 = 3
  62.         End Select
  63.         INTEGER004 = 2
  64.     Endif
  65.     STRING007 = ReadLine(PPEPath() + "prompts.cnf", INTEGER004)
  66.     INTEGER006 = ReadLine(PPEPath() + "prompts.cnf", INTEGER004 + 1)
  67.     INTEGER007 = ReadLine(PPEPath() + "prompts.cnf", INTEGER004 + 2)
  68.     Tokenize STRING007
  69.     STRING007 = GetToken()
  70.     STRING008 = GetToken()
  71.     If (!AnsiOn()) INTEGER002 = 0
  72.     StartDisp 1
  73.     Select Case (INTEGER001)
  74.         Case 152
  75.             INTEGER001 = 7
  76.             Gosub LABEL009
  77.             Select Case (INTEGER002)
  78.                 Case 0
  79.                     DispStr STRING003
  80.                 Case 1
  81.                     AnsiPos 1, 2
  82.                     DispFile PPEPath() + "sysop.pcb", 0
  83.                     AnsiPos STRING007, STRING008
  84.                     Print STRING002
  85.                     Print Space(INTEGER007 - GetX())
  86.                     AnsiPos STRING009, STRING010
  87.                     Print Space(16)
  88.                     Backup 16
  89.                 Case 2
  90.                     AnsiPos 2, 1
  91.                     DispFile PPEPath() + "apply.pcb", 0
  92.                     Gosub LABEL016
  93.                 Case 3
  94.                     For INTEGER001 = GetY() To 1 Step -1
  95.                         If (ScrText(1, INTEGER001, 3, 0) == "D: ") Then
  96.                             STRING011 = RTrim(Mixed(ScrText(4, INTEGER001 - 1, 25, 0)), " ")
  97.                             INTEGER001 = 0
  98.                         Endif
  99.                     Next
  100.                     Cls
  101.                     PrintLn ReadLine(PPEPath() + "prompts.cnf", 65)
  102.                     Print ReadLine(PPEPath() + "prompts.cnf", 79) + STRING011
  103.                     AnsiPos 2, 1
  104.                     DispFile PPEPath() + "sysop.pcb", 0
  105.                     AnsiPos STRING007, STRING008
  106.                     Print STRING002
  107.                     Print Space(INTEGER007 - GetX())
  108.                     AnsiPos STRING009, STRING010
  109.             End Select
  110.         Case 111
  111.             INTEGER001 = 10
  112.             Gosub LABEL009
  113.             Gosub LABEL016
  114.         Case 265
  115.             INTEGER001 = 13
  116.             Gosub LABEL009
  117.             INTEGER001 = 24
  118.             Gosub LABEL012
  119.         Case 113
  120.             INTEGER001 = 16
  121.             Gosub LABEL009
  122.             INTEGER001 = -1
  123.             Gosub LABEL013
  124.         Case 114
  125.             INTEGER001 = 19
  126.             Gosub LABEL009
  127.             INTEGER001 = -1
  128.             Gosub LABEL013
  129.         Case 2
  130.             INTEGER001 = 22
  131.             Gosub LABEL009
  132.             INTEGER001 = -2
  133.             Gosub LABEL013
  134.         Case 556
  135.             INTEGER001 = 77
  136.             Gosub LABEL011
  137.             If (INTEGER002 == 2) Then
  138.                 KbdStuff "y"
  139.             Else
  140.                 Print STRING002
  141.             Endif
  142.         Case 698
  143.             INTEGER001 = 76
  144.             Gosub LABEL011
  145.             If (INTEGER002 == 0) Then
  146.                 Print STRING002
  147.             Endif
  148.         Case 699
  149.             INTEGER001 = 25
  150.             Gosub LABEL009
  151.             INTEGER001 = 50
  152.             Gosub LABEL012
  153.         Case 700
  154.             INTEGER001 = 28
  155.             Gosub LABEL009
  156.             INTEGER001 = 50
  157.             Gosub LABEL012
  158.         Case 701
  159.             INTEGER001 = 31
  160.             Gosub LABEL009
  161.             INTEGER001 = 25
  162.             Gosub LABEL012
  163.         Case 702
  164.             INTEGER001 = 34
  165.             Gosub LABEL009
  166.             INTEGER001 = 10
  167.             Gosub LABEL012
  168.         Case 703
  169.             INTEGER001 = 37
  170.             Gosub LABEL009
  171.             INTEGER001 = 10
  172.             Gosub LABEL012
  173.         Case 704
  174.             INTEGER001 = 40
  175.             Gosub LABEL009
  176.             INTEGER001 = 15
  177.             Gosub LABEL012
  178.         Case 706
  179.             INTEGER001 = 43
  180.             Gosub LABEL009
  181.             INTEGER001 = 25
  182.             Gosub LABEL012
  183.         Case 269
  184.             INTEGER001 = 46
  185.             Gosub LABEL009
  186.             Gosub LABEL012
  187.         Case 112
  188.             INTEGER001 = 49
  189.             Gosub LABEL009
  190.             Gosub LABEL012
  191.         Case 267
  192.             INTEGER001 = 52
  193.             Gosub LABEL009
  194.             Gosub LABEL012
  195.         Case 266
  196.             INTEGER001 = 55
  197.             Gosub LABEL009
  198.             Gosub LABEL012
  199.         Case 325
  200.             INTEGER001 = 58
  201.             Gosub LABEL009
  202.             Gosub LABEL012
  203.             If (INTEGER002 <> 0) Then
  204.                 STRING004 = NoChar()
  205.                 InputStr "", STRING004, 9, 1, YesChar() + NoChar(), 2 + 8
  206.                 If (STRING004 == "") STRING004 = Chr(13)
  207.                 KbdStuff STRING004
  208.                 Newlines 4
  209.             Endif
  210.         Case 208
  211.             Cls
  212.             INTEGER001 = 61
  213.             Gosub LABEL011
  214.             Print STRING002
  215.         Case 53
  216.             INTEGER001 = 62
  217.             Gosub LABEL011
  218.             Print STRING002
  219.         Case 264
  220.             INTEGER001 = 63
  221.             Gosub LABEL011
  222.             Gosub LABEL014
  223.         Case 123
  224.             INTEGER001 = 64
  225.             Gosub LABEL011
  226.             Gosub LABEL014
  227.             If (INTEGER002 <> 0) Then
  228.                 AnsiPos 1, 23
  229.                 Wait
  230.             Endif
  231.             Log StripAtx(STRING002), 0
  232.         Case 58
  233.             Cls
  234.             INTEGER001 = 65
  235.             Gosub LABEL011
  236.             Print STRING002
  237.         Case 204
  238.             INTEGER001 = 66
  239.             Gosub LABEL011
  240.             Gosub LABEL014
  241.             If (INTEGER002 <> 0) Then
  242.                 AnsiPos 1, 23
  243.                 Wait
  244.             Endif
  245.             Log StripAtx(STRING002), 0
  246.         Case 167, 168
  247.             INTEGER001 = 67
  248.             Gosub LABEL011
  249.             Print STRING002
  250.         Case 110
  251.             INTEGER001 = 68
  252.             Gosub LABEL011
  253.             Gosub LABEL014
  254.         Case 117
  255.             INTEGER001 = 69
  256.             Gosub LABEL011
  257.             Gosub LABEL014
  258.         Case 8
  259.             If (INTEGER002 == 4) Then
  260.                 INTEGER001 = 108
  261.                 Gosub LABEL010
  262.                 Gosub LABEL015
  263.                 Log StripAtx(STRING002), 0
  264.             Else
  265.                 INTEGER001 = 70
  266.                 Gosub LABEL011
  267.                 Gosub LABEL014
  268.                 Log StripAtx(STRING002), 0
  269.             Endif
  270.         Case 708
  271.             INTEGER001 = 71
  272.             Gosub LABEL011
  273.             Gosub LABEL014
  274.         Case 709
  275.             INTEGER001 = 72
  276.             Gosub LABEL011
  277.             Gosub LABEL014
  278.         Case 705
  279.             INTEGER001 = 73
  280.             Gosub LABEL011
  281.             Gosub LABEL014
  282.         Case 54
  283.             KbdStuff Chr(13)
  284.         Case 259
  285.             INTEGER001 = 83
  286.             Gosub LABEL009
  287.             If (INTEGER002 == 0) Then
  288.                 DispStr STRING003
  289.             Else
  290.                 If (ScrText(80, 1, 1, 0) <> " ") Then
  291.                     DispFile PPEPath() + "logon.pcb", 0
  292.                     AnsiPos 80, 1
  293.                     Print " "
  294.                 Endif
  295.                 AnsiPos STRING007, STRING008
  296.                 Print STRING002
  297.                 Print Space(INTEGER007 - GetX())
  298.                 AnsiPos STRING009, STRING010
  299.                 Print Space(25)
  300.                 AnsiPos STRING009, STRING010
  301.             Endif
  302.         Case 260
  303.             INTEGER001 = 86
  304.             Gosub LABEL009
  305.             If (INTEGER002 == 0) Then
  306.                 DispStr STRING003
  307.             Endif
  308.             KbdStuff Chr(13)
  309.         Case 148
  310.             INTEGER001 = 86
  311.             Gosub LABEL009
  312.             If (INTEGER002 == 4) Then
  313.                 AnsiPos STRING009, STRING010
  314.                 GetUser
  315.                 Print Left(STRING002, 4) + Mixed(U_City)
  316.             Endif
  317.             INTEGER001 = 89
  318.             Gosub LABEL009
  319.             If (INTEGER002 == 4) INTEGER002 = 2
  320.             Gosub LABEL016
  321.         Case 92
  322.             INTEGER001 = 92
  323.             Gosub LABEL010
  324.             Gosub LABEL015
  325.         Case 595
  326.             INTEGER001 = 94
  327.             Gosub LABEL010
  328.             Gosub LABEL015
  329.         Case 596
  330.             INTEGER001 = 96
  331.             Gosub LABEL010
  332.             Gosub LABEL015
  333.         Case 3
  334.             INTEGER001 = 98
  335.             Gosub LABEL010
  336.             Gosub LABEL015
  337.             Log StripAtx(STRING002), 0
  338.         Case 5
  339.             INTEGER001 = 100
  340.             Gosub LABEL010
  341.             Gosub LABEL015
  342.             Log StripAtx(STRING002), 0
  343.         Case 6
  344.             INTEGER001 = 102
  345.             Gosub LABEL010
  346.             Gosub LABEL015
  347.             Log StripAtx(STRING002), 0
  348.         Case 7
  349.             INTEGER001 = 104
  350.             Gosub LABEL010
  351.             Gosub LABEL015
  352.             Log StripAtx(STRING002), 0
  353.         Case 10
  354.             INTEGER001 = 106
  355.             Gosub LABEL010
  356.             Gosub LABEL015
  357.             Log StripAtx(STRING002), 0
  358.         Case 9
  359.             INTEGER001 = 110
  360.             Gosub LABEL010
  361.             Gosub LABEL015
  362.             Log StripAtx(STRING002), 0
  363.         Case 76
  364.             INTEGER001 = 112
  365.             Gosub LABEL010
  366.             Gosub LABEL015
  367.         Case 4
  368.             INTEGER001 = 114
  369.             Gosub LABEL010
  370.             Gosub LABEL015
  371.             Newlines 6
  372.             Log StripAtx(STRING002), 0
  373.         Case 710
  374.             INTEGER001 = 116
  375.             Gosub LABEL010
  376.             If (INTEGER002 == 0) Then
  377.                 DispStr STRING003
  378.             Else
  379.                 Cls
  380.                 Print STRING002
  381.             Endif
  382.         Case 711
  383.             INTEGER001 = 118
  384.             Gosub LABEL010
  385.             Gosub LABEL015
  386.         Case 657
  387.             INTEGER001 = 120
  388.             Gosub LABEL010
  389.             Gosub LABEL015
  390.     End Select
  391.     StartDisp 2
  392.     End
  393.     :LABEL001
  394.     STRING001 = Left(ReadLine(PPEPath() + "prompts.cnf", 5), 3)
  395.     Color 7
  396.     :LABEL002
  397.     If (BOOLEAN002) Goto LABEL004
  398.     STRING006 = Inkey()
  399.     If ((STRING006 == "+") && (INTEGER003 == 0)) Then
  400.         BOOLEAN001 = 1
  401.         Print STRING006
  402.         STRING004 = STRING004 + STRING006
  403.         Inc INTEGER003
  404.     ElseIf ((STRING006 == Chr(8)) && (INTEGER003 > 0)) Then
  405.         If (BOOLEAN001) Then
  406.             Print STRING005
  407.             Dec INTEGER003
  408.             STRING004 = Left(STRING004, INTEGER003)
  409.             If (INTEGER003 == 0) BOOLEAN001 = 0
  410.         Else
  411.             If (((INTEGER003 == 2) || (INTEGER003 == 5)) || (INTEGER003 == 9)) Then
  412.                 Print STRING005 + STRING005
  413.                 INTEGER003 = INTEGER003 - 2
  414.             Else
  415.                 Print STRING005
  416.                 Dec INTEGER003
  417.             Endif
  418.             STRING004 = Left(STRING004, INTEGER003)
  419.         Endif
  420.     Else
  421.         If (BOOLEAN001) Then
  422.             If (STRING006 == Chr(13)) Then
  423.                 BOOLEAN002 = 1
  424.             ElseIf (((INTEGER003 < 13) && (Len(STRING006) == 1)) && (InStr(Mask_Num() + "-", STRING006) > 0)) Then
  425.                 Print STRING006
  426.                 STRING004 = STRING004 + STRING006
  427.                 Inc INTEGER003
  428.             Endif
  429.         Else
  430.             If (STRING006 == Chr(13)) Then
  431.                 If (INTEGER003 == 13) Then
  432.                     BOOLEAN002 = 1
  433.                 Else
  434.                     INTEGER004 = GetX()
  435.                     INTEGER005 = GetY()
  436.                     AnsiPos STRING007, STRING008
  437.                     Print ReadLine(PPEPath() + "prompts.cnf", 74)
  438.                     INTEGER001 = INTEGER007 - GetX()
  439.                     Print Space(INTEGER001)
  440.                     Backup INTEGER001
  441.                     Delay INTEGER006
  442.                     AnsiPos STRING007, STRING008
  443.                     Print STRING002
  444.                     Color 7
  445.                     Print Space(INTEGER007 - GetX())
  446.                     AnsiPos INTEGER004, INTEGER005
  447.                 Endif
  448.             ElseIf (((INTEGER003 < 13) && (Len(STRING006) == 1)) && (InStr(Mask_Num(), STRING006) > 0)) Then
  449.                 If (INTEGER003 == 0) Then
  450.                     Print Left(STRING001, 1) + STRING006
  451.                     STRING004 = STRING004 + Left(STRING001, 1) + STRING006
  452.                     Inc INTEGER003
  453.                     Goto LABEL003
  454.                 Endif
  455.                 If (INTEGER003 == 3) Then
  456.                     Print STRING006 + Mid(STRING001, 2, 1)
  457.                     STRING004 = STRING004 + STRING006 + Mid(STRING001, 2, 1)
  458.                     Inc INTEGER003
  459.                     Goto LABEL003
  460.                 Endif
  461.                 If (INTEGER003 == 7) Then
  462.                     Print STRING006 + Right(STRING001, 1)
  463.                     STRING004 = STRING004 + STRING006 + Right(STRING001, 1)
  464.                     Inc INTEGER003
  465.                     Goto LABEL003
  466.                 Endif
  467.                 Print STRING006
  468.                 STRING004 = STRING004 + STRING006
  469.                 :LABEL003
  470.                 Inc INTEGER003
  471.             Endif
  472.         Endif
  473.     Endif
  474.     Goto LABEL002
  475.     :LABEL004
  476.     KbdStuff STRING004
  477.     Return
  478.     :LABEL005
  479.     STRING001 = Left(ReadLine(PPEPath() + "prompts.cnf", 6), 1)
  480.     Color 7
  481.     :LABEL006
  482.     If (BOOLEAN002) Goto LABEL008
  483.     STRING006 = Inkey()
  484.     If ((STRING006 == Chr(8)) && (INTEGER003 > 0)) Then
  485.         If ((((INTEGER003 == 1) || (INTEGER003 == 4)) || (INTEGER003 == 7)) || (INTEGER003 == 8)) Then
  486.             Print STRING005
  487.             Dec INTEGER003
  488.         Else
  489.             Print STRING005 + STRING005
  490.             INTEGER003 = INTEGER003 - 2
  491.         Endif
  492.         STRING004 = Left(STRING004, INTEGER003)
  493.     ElseIf ((InStr(Mask_Num(), STRING006) > 0) && (INTEGER003 < 8)) Then
  494.         If ((INTEGER003 == 1) || (INTEGER003 == 4)) Then
  495.             Print STRING006 + STRING001
  496.             STRING004 = STRING004 + STRING006 + STRING001
  497.             INTEGER003 = INTEGER003 + 2
  498.         Else
  499.             Print STRING006
  500.             STRING004 = STRING004 + STRING006
  501.             Inc INTEGER003
  502.         Endif
  503.     ElseIf (STRING006 == Chr(13)) Then
  504.         If (INTEGER003 == 8) Then
  505.             BOOLEAN002 = 1
  506.             Goto LABEL007
  507.         Endif
  508.         INTEGER004 = GetX()
  509.         INTEGER005 = GetY()
  510.         AnsiPos STRING007, STRING008
  511.         Print ReadLine(PPEPath() + "prompts.cnf", 75)
  512.         INTEGER001 = INTEGER007 - GetX()
  513.         Print Space(INTEGER001)
  514.         Backup INTEGER001
  515.         Delay INTEGER006
  516.         AnsiPos STRING007, STRING008
  517.         Print STRING002
  518.         Color 7
  519.         Print Space(INTEGER007 - GetX())
  520.         AnsiPos INTEGER004, INTEGER005
  521.     Endif
  522.     :LABEL007
  523.     Goto LABEL006
  524.     :LABEL008
  525.     INTEGER004 = Right(Date(), 2)
  526.     INTEGER005 = Right(STRING004, 2)
  527.     INTEGER003 = INTEGER004 - INTEGER005
  528.     INTEGER004 = Left(Date(), 2)
  529.     INTEGER005 = Left(STRING004, 2)
  530.     If (INTEGER004 < INTEGER005) Then
  531.         Dec INTEGER003
  532.     ElseIf (INTEGER004 == INTEGER005) Then
  533.         INTEGER004 = Mid(Date(), 4, 2)
  534.         INTEGER005 = Mid(STRING004, 4, 2)
  535.         If (INTEGER004 < INTEGER005) Dec INTEGER003
  536.     Endif
  537.     OpText INTEGER003
  538.     Print ReadLine(PPEPath() + "prompts.cnf", 78)
  539.     STRING004 = ScrText(STRING009, STRING010, GetX() - STRING009, 0)
  540.     KbdStuff STRING004
  541.     Return
  542.     :LABEL009
  543.     STRING002 = ReadLine(PPEPath() + "prompts.cnf", INTEGER001)
  544.     STRING003 = ReadLine(PPEPath() + "prompts.cnf", INTEGER001 + 1)
  545.     STRING009 = ReadLine(PPEPath() + "prompts.cnf", INTEGER001 + 2)
  546.     Tokenize STRING009
  547.     STRING009 = GetToken()
  548.     STRING010 = GetToken()
  549.     Return
  550.     :LABEL010
  551.     STRING002 = ReadLine(PPEPath() + "prompts.cnf", INTEGER001)
  552.     STRING003 = ReadLine(PPEPath() + "prompts.cnf", INTEGER001 + 1)
  553.     Return
  554.     :LABEL011
  555.     STRING002 = ReadLine(PPEPath() + "prompts.cnf", INTEGER001)
  556.     Return
  557.     :LABEL012
  558.     Select Case (INTEGER002)
  559.         Case 0
  560.             DispStr STRING003
  561.             AnsiPos STRING007, STRING008
  562.             Print STRING002
  563.             Print Space(INTEGER007 - GetX())
  564.             AnsiPos STRING009, STRING010
  565.         Case 2
  566.             InputStr "_", STRING004, 7, INTEGER001, Mask_Pwd(), 0
  567.             If (STRING004 == "") STRING004 = Chr(13)
  568.             KbdStuff STRING004
  569.     End Select
  570.     Return
  571.     :LABEL013
  572.     If (INTEGER002 == 0) Then
  573.         DispStr STRING003
  574.     Else
  575.         AnsiPos STRING007, STRING008
  576.         Print STRING002
  577.         Print Space(INTEGER007 - GetX())
  578.         AnsiPos STRING009, STRING010
  579.         If ((INTEGER002 == 2) && (INTEGER001 == -1)) Gosub LABEL001
  580.         If ((INTEGER002 == 2) && (INTEGER001 == -2)) Gosub LABEL005
  581.     Endif
  582.     Return
  583.     :LABEL014
  584.     If (INTEGER002 == 0) Then
  585.         Print StripAtx(STRING002)
  586.     Else
  587.         AnsiPos STRING007, STRING008
  588.         Print STRING002
  589.         INTEGER001 = INTEGER007 - GetX()
  590.         Print Space(INTEGER001)
  591.         Backup INTEGER001
  592.         Delay INTEGER006
  593.     Endif
  594.     Return
  595.     :LABEL015
  596.     If (INTEGER002 == 0) Then
  597.         DispStr STRING003
  598.     Else
  599.         AnsiPos STRING007, STRING008
  600.         Print STRING002
  601.         INTEGER001 = 75 - GetX()
  602.         Print Space(INTEGER001)
  603.         Backup INTEGER001
  604.         Delay INTEGER006
  605.     Endif
  606.     Return
  607.     :LABEL016
  608.     Select Case (INTEGER002)
  609.         Case 0
  610.             DispStr STRING003
  611.             AnsiPos STRING007, STRING008
  612.             Print STRING002
  613.             Print Space(INTEGER007 - GetX())
  614.             AnsiPos STRING009, STRING010
  615.             Print Space(16)
  616.             Backup 16
  617.         Case 2
  618.             Color 7
  619.             :LABEL017
  620.             If (BOOLEAN001) Goto LABEL019
  621.             STRING006 = Inkey()
  622.             If ((InStr(Mask_Pwd(), STRING006) > 0) && (Len(STRING004) < 12)) Then
  623.                 MPrint "."
  624.                 SPrint STRING006
  625.                 STRING004 = STRING004 + STRING006
  626.                 Goto LABEL018
  627.             Endif
  628.             If ((STRING006 == Chr(8)) && (Len(STRING004) > 0)) Then
  629.                 MPrint STRING005
  630.                 SPrint STRING005
  631.                 STRING004 = Left(STRING004, Len(STRING004) - 1)
  632.                 Goto LABEL018
  633.             Endif
  634.             If (STRING006 == Chr(13)) Then
  635.                 BOOLEAN001 = 1
  636.             Endif
  637.             :LABEL018
  638.             Goto LABEL017
  639.             :LABEL019
  640.             If (STRING004 == "") STRING004 = Chr(13)
  641.             KbdStuff Upper(STRING004)
  642.     End Select
  643.     Return
  644.  
  645. ;------------------------------------------------------------------------------
  646. ;
  647. ; Usage report (before postprocessing)
  648. ;
  649. ; ■ Statements used :
  650. ;
  651. ;    2       End
  652. ;    4       Cls
  653. ;    2       Wait
  654. ;    6       Color 
  655. ;    196     Goto 
  656. ;    137     Let 
  657. ;    52      Print 
  658. ;    2       PrintLn 
  659. ;    116     If 
  660. ;    4       DispFile 
  661. ;    2       StartDisp 
  662. ;    1       GetUser
  663. ;    11      Log 
  664. ;    2       InputStr 
  665. ;    96      Gosub 
  666. ;    10      Return
  667. ;    4       Delay 
  668. ;    7       Inc 
  669. ;    5       Dec 
  670. ;    3       Newlines 
  671. ;    2       Tokenize 
  672. ;    8       KbdStuff 
  673. ;    1       OpText 
  674. ;    8       DispStr 
  675. ;    28      AnsiPos 
  676. ;    6       Backup 
  677. ;    2       SPrint 
  678. ;    2       MPrint 
  679. ;
  680. ;
  681. ; ■ Functions used :
  682. ;
  683. ;    8       -
  684. ;    56      +
  685. ;    20      -
  686. ;    111     ==
  687. ;    5       <>
  688. ;    7       <
  689. ;    1       <=
  690. ;    7       >
  691. ;    2       >=
  692. ;    108     !
  693. ;    14      &&
  694. ;    9       ||
  695. ;    5       Len(
  696. ;    1       Upper()
  697. ;    4       Mid()
  698. ;    14      Left()
  699. ;    4       Right()
  700. ;    15      Space()
  701. ;    14      Chr()
  702. ;    4       InStr()
  703. ;    1       RTrim()
  704. ;    3       Date()
  705. ;    2       NoChar()
  706. ;    1       YesChar()
  707. ;    15      StripAtx()
  708. ;    3       Inkey()
  709. ;    2       Mask_Pwd()
  710. ;    3       Mask_Num()
  711. ;    23      PPEPath()
  712. ;    19      ReadLine()
  713. ;    5       GetToken()
  714. ;    1       AnsiOn()
  715. ;    15      GetX()
  716. ;    4       GetY()
  717. ;    1       TokCount()
  718. ;    8       ScrText()
  719. ;    2       Mixed()
  720. ;
  721. ;------------------------------------------------------------------------------
  722. ;
  723. ; Analysis flags : M
  724. ;
  725. ; M - Send text to modem only ■ 4
  726. ;     Some informations are sent only to the modem, not to the local
  727. ;     screen, this is a well known way to make stealth backdoors, Check!
  728. ;     ■ Search for : SENDMODEM, MPRINT, MPRINTLN
  729. ;
  730. ;------------------------------------------------------------------------------
  731. ;
  732. ; Postprocessing report
  733. ;
  734. ;    1       For/Next
  735. ;    0       While/EndWhile
  736. ;    41      If/Then or If/Then/Else
  737. ;    5       Select Case
  738. ;
  739. ;------------------------------------------------------------------------------
  740. ;                 AEGiS Corp - Break the routines, code against the machines!
  741. ;------------------------------------------------------------------------------
  742.